The cost of one more setting
Every preference you ship is a decision handed back to someone who did not ask for it.
A settings screen is where teams go to stop arguing. Two people want different defaults, nobody wants to be the one who loses, and a toggle costs about an hour to build. So the toggle ships, the argument ends, and everyone goes home.
What actually happened is that the argument was moved. It now takes place in the head of every person who opens that screen, once each, forever.
A toggle is a question
The honest way to read a preference is as a sentence: we could not decide, so you decide. Sometimes that is the right thing to say. Someone using a screen reader genuinely knows more about their needs than you do. Someone who works in three time zones has a real opinion about how dates should render.
But most settings are not that. Most settings are a team declining to have taste in public.
The best defaults feel like they were chosen by someone who had used the product for a year. The worst feel like they were chosen by a vote.
The compounding part
One setting is cheap. The cost is in the combinations. Two toggles are four states, and by the time you have eight of them you have two hundred and fifty-six versions of your product, of which you have seen maybe three. Bug reports arrive describing a piece of software you have never run.
It gets worse when settings are hidden from each other. The person who turns off animations and the person who turns on compact mode never meet, but their choices land in the same layout, and no one has ever looked at that layout.
What to do instead
Watch what people actually change. If a preference is flipped by four percent of users, it is not a preference, it is a bug report with a nicer interface — go and fix the default. If it is flipped by half of them, you did not have a default, you had a coin toss, and you should ask a better question about who those two groups are.
And when you do decide to keep one, put it near the thing it affects. A setting that lives three screens away from its effect is a setting nobody will connect to the change it caused.
The goal is not zero settings. The goal is that every one of them survives the question: which real person asked for this, and what happened to them before it existed?